iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 17
0
自我挑戰組

我要努力成為軟體後端工程師!系列 第 17

Day 17-C#編碼的變數宣告與常數宣告

  • 分享至 

  • xImage
  •  

-前集提要-

對於C#程式碼編寫規則與命名規則,做些簡單的介紹

這次要講的是關於C#的編碼會使用到的變數宣告常數宣告


程式語言在資料處理時,通常把資料分成兩類:變數(Variable)常數(Constant)

變數,顧名思義就是指程式在執行的過程中,可以改變其值。而常數則一直保持不變

C#是一個強型別語言,在建立C#變數或常數時,要同時宣告它的類別型別(type)
也就是說,必需告知建立的變數是要用來儲存數字、文字或其他,不然C#會不知道開發者要叫它做什麼事啊~
使用變數時必須要事先宣告,並且要設定初值,否則會產生錯誤訊息。看似不方便,但其實也有很多優點(畢竟有利既有弊)。


變數(Variable)

是指資料儲存在主記憶體位址的名稱,其內容會隨著程式的執行而改變。可以將變數想像成一個容器,它是專門用來儲放資料的地方。而容器的大小是由宣告時的資料型態來決定

變數常用的型別(type)包括整數(int)浮點數(float, double)字串(string)字元(char)布林(bool),以下圖示範整數及浮點數。

整數(int)

整數

浮點數(float, double)

浮點數


###宣告變數的方法
就像前面所提到,既然要使用變數,就一定要告訴它要做些什麼事,這一步驟就是就做宣告,不然它會不理你。
變數宣告之目的就是用來向系統要求變數在輸入處理儲存資料所須要的空間,亦即變數在宣告之後系統會自動配置適當的記憶體空間,來存放該型態的資料。

宣告變數

變數


變數的命名方法

再次整理寫出提醒,變數的命名規則,在編寫程式時必須遵守,其規則如下:

  1. 變數名稱不能以數字作為開頭。並且不可以有特殊符號(! , @ , # , $ ,% , * ⋯⋯)。
  2. 變數名稱不可以與Visual Studio的保留字相同。
  3. 變數名稱在同一個有效區域範圍內不可以重覆
  4. 變數名稱必需要以英文字(a~z 大小寫均可)做開頭,但大小寫將視為不同
  5. 變數名稱可以是中文字,建議不要使用。(有時會產生亂碼哦!)

常數(Constant)

有些值會在程式中重複出現,並且其值也不會被改變,可以利用一個較有意義的名稱來取代這些不會被改變的數字或字串,稱為常數。亦即在整個程式執行中,不會改變內容的資料稱之。
簡言之,常數(constants)指派值之後,就不能再變更
常常被用來定義一些系統參數,例如資料庫連線資料、權限、路徑,定義的規則跟變數一樣,必須先指定資料型別。如下圖範例。
常數

常數可分為兩種,分別為數字常數字串常數
簡單來說就是數字(0123456789)與字串(英文字或中文字)


資料型態轉換

宣告為某種型別的變數,只能存該型別的資料,否則則要進行型別轉換。而在撰寫程式時,常常發現輸入的資料,在經過處理之後卻產生與預期的輸出結果有點誤差。
那就必須要透過資料型態轉換的機制來完成。基本上,資料型態轉換可分為兩種

  1. 隱含轉換(Implicit Conversion):小轉大
  2. 強制轉換(Explicit Conversion):大轉小

隱含轉換

隱含轉換又稱為自動轉換,也就是將表示範圍較小的資料型態轉換成表示範圍較大的資料型態,由於此種轉換方式是由系統自動處理,所以不會出現錯誤訊息。如下圖範例。
隱含
顯示


強制轉換

顧名思義就是將表示範圍較大的資料型態強制轉換成表示範圍較小的資料型態(例如:double > int)或不同資料型態的轉換(例如:int float),雖然int與float所佔用記憶體相同,但也必須要透過強制轉換。如下圖範例所示。
強制
顯示

沒有強制轉換,就會發生錯誤,如下圖範例所示。
無強制
錯誤

不過大轉小或不同型態轉換時,原始資料會可能會有失真現象。

若是想要參考更詳細的變數&常數說明,可以參考這篇文章。
C#變數與變數宣告、常數與常數宣告、var、型別轉換


上一篇
Day 16-C#基本編碼規範與命名規則簡介
下一篇
Day 18-C#運算式與運算子之數學運算編碼介紹
系列文
我要努力成為軟體後端工程師!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言